package vip.liux.front.application.service.payment;

import com.fasterxml.jackson.annotation.JsonAnyGetter;
import com.fasterxml.jackson.annotation.JsonUnwrapped;
import lombok.Getter;
import lombok.Setter;
import vip.liux.application.dots.EntityDto;
import vip.liux.core.objectExtending.ExtraProperty;
import vip.liux.core.objectExtending.IHasExtraProperties;

import java.io.Serializable;
import java.util.List;

@Getter
@Setter
public class PaymentRequestWithDetailsDto extends EntityDto<String> implements IHasExtraProperties, Serializable {

    /**
     * 支付产品信息
     */
    private List<PaymentRequestProductDto> products;

    /**
     * 支付请求的货币
     */
    private String currency;

    /**
     * 支付请求的状态
     */
    private Integer state;

    /**
     * 支付请求的失败信息
     */
    private String failReason;

    /**
     * 支付请求的额外参数
     */
    @JsonAnyGetter
    @JsonUnwrapped
    private ExtraProperty extraProperties;
}
